package com.kla.power.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.kla.power.vo.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * <p>
 * 报警/故障
 * </p>
 *
 * @author WuZH
 * @since 2023-06-23
 */
@Data
@TableName ( "alarm_info" )
@ApiModel ( value = "AlarmEntity对象", description = "报警/故障" )
public class AlarmEntity extends BaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty ( "报警Id" )
    @TableId ( value = "id", type = IdType.INPUT )
    private String id;

    @ApiModelProperty ( "故障码" )
    @TableField ( "alarmCode" )
    private String alarmCode;

    @ApiModelProperty ( "报名名称，来自于中功率光伏协议书" )
    @TableField ( "alarmTitle" )
    private String alarmTitle;

    @ApiModelProperty ( "状态，表示该故障或报名有无接触，维保人员修复后手动修改状态" )
    @TableField ( "status" )
    private Integer status;

    @ApiModelProperty ( "报警设备类型，1:采集器;2:监控器;3:逆变器;4:优化器;5:电表;6:机器人;7:气象站;" )
    @TableField ( "type" )
    private Integer type;

    @ApiModelProperty ( "具体来源哪台设备" )
    @TableField ( "deviceSn" )
    private String deviceSn;

    @ApiModelProperty ( "设备型号" )
    @TableField ( "deviceModel" )
    private String deviceModel;

    @ApiModelProperty ( "申报人" )
    @TableField ( "alarmUser" )
    private String alarmUser;

    @TableField ( "stationId" )
    private String stationId;

    @TableField ( "createTime" )
    private Date createTime;

    @TableField ( "changeTime" )
    private Date changeTime;

    @TableField ( "isUsed" )
    private Integer isUsed;

    @TableField ( exist = false )
    private String stationName;
    @TableField ( exist = false )
    private String merchantId;

    @TableField ( exist = false )
    private List<String> ids;


}
